package com.linx.park.domain.bo;

import com.linx.common.core.validate.EditGroup;
import com.linx.park.domain.ParkPlace;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 园区区域业务对象 park_place
 *
 * @author 泽智科技
 * @date 2024-10-10
 */
@Data
@AutoMapper(target = ParkPlace.class, reverseConvertGenerate = false)
public class ParkPlaceBo {

    /**
     * 主键
     */
    @NotNull(message = "主键不能为空", groups = {EditGroup.class})
    private Long parkPlaceId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 园区id
     */
//    @NotNull(message = "园区id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long parkInfoId;

    /**
     * 父级id（0为根节点）
     */
    private Long pid;

    /**
     * 区域名称
     */
//    @NotBlank(message = "区域名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String placeName;

    /**
     * 类型（1：园区楼栋；2：园区楼栋区域；3：楼栋区域楼层，4：楼层房间；）
     */
    private Long type;

    /**
     * 园区code
     */
    private String parkInfoCode;

    /**
     * 楼栋id
     */
    private Long parkBuildingId;

    /**
     * 楼栋名称
     */
    private String parkBuildingName;

    /**
     * 楼栋区域id
     */
    private Long parkBuildingAreaId;

    /**
     * 楼栋区域名称
     */
    private String parkBuildingAreaName;

    /**
     * 楼栋区域楼层id
     */
    private Long parkBuildingFloorId;

    /**
     * 楼栋区域楼层名称
     */
    private String parkBuildingFloorName;

    /**
     * 楼栋房间id
     */
    private Long parkBuildingRoomId;

    /**
     * l楼栋房间名称
     */
    private String parkBuildingRoomName;

    /**
     * 园区名称
     */
    private String parkInfoName;

    /**
     * 删除标志（0代表存在 1代表删除）
     */
    private String delFlag;

    private String tenantId;


    private String parkBuildingCode;
    private String parkBuildingAreaCode;
    private String parkBuildingFloorCode;
    private String parkBuildingRoomCode;

    private String roomCode;
    private String longitude;
    private String latitude;
    private String parkPlaceCode;
    private Integer grade;
      private String path;
}
